package cn.com.surker.production.dao;

import cn.com.surker.production.entity.ProDriverWork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.Date;

/**
 * <p>
 * 司机下班申请记录 Mapper 接口
 * </p>
 *
 * @author admin
 * @since 2022-03-04
 */
public interface ProDriverWorkDao extends BaseMapper<ProDriverWork> {


    /**
     * 最后申请签退时间
     * @param openid
     * @return
     */
    ProDriverWork findLastWork(String openid);

    /**
     * 查询最新的退签记录
     * @param openid openid
     * @param phone 电话
     * @param workStatus
     * @param orgId 公司ID
     * @return
     */
    ProDriverWork findNewWork(String openid, String phone, Integer workStatus, String lng, String lat, Long orgId);

    /**
     *
     * @param ticketId 三局云砼小票ID
     * @param signType 签收类型 10-正常签收 20-拒签
     * @param acptQuantity 签收量 四位精度
     * @param sendQuantity 运送量 四位精度
     * @param backQuantity 退货量（签收类型为 拒签 时，必填） 四位精度
     * @param reason 退货原因
     * @param memo 备注
     * @param appcode 应用编码
     * @param extra 拓展字段，方便后续进行接口拓展！数据为序列化后的json字符串
     * @param distance	BigDecimal	否	小票运距
     * @param stationId	String（32）	否	厂站ID
     * @param erpTicketId	String（100）	是	erp系统小票ID
     * @param quantitySource	String（50）	是	签收方量数据来源 10-地磅 20-人员手动签收
     * @param pouringType	String（100）	是	浇筑方式（10-自卸、20-车泵、30-地泵、40-喷射）
     * @param arriver	String（50）	是	签收人
     * @param arriverPhone	String（50）	是	签收人电话
     * @return
     */
    Integer saveTicket(String ticketId, String signType, Double acptQuantity, Double sendQuantity,
                       Double backQuantity, String reason, String memo, String appcode, String extra,
                       Double distance, String stationId, String erpTicketId, String quantitySource,
                       String pouringType, String arriver, String arriverPhone, Date createTime);

}
